package com.toonan.system.dao;
/**
 * 
 * @ClassName:  ParamDao   
 * @Description:键值参数mongoDB数据库操作
 * @author: 陈骑元（chenqiyuan@toonan.com)
 * @date:   2022年2月13日 上午9:16:51     
 * @Copyright: 2022 www.toonan.com Inc. All rights reserved. 
 * 注意：本内容仅限于广州市图南软件有限公司内部传阅，禁止外泄以及用于其他的商业目
 */

import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;

import com.toonan.core.constant.WebplusCons;
import com.toonan.core.mongo.BaseMongo;
import com.toonan.core.util.WebplusMongo;
import com.toonan.system.model.Param;

@Service
public class ParamDao extends BaseMongo<Param> {
   
	@Override
	protected Class<Param> getEntityClass() {
		// TODO Auto-generated method stub
		return Param.class;
	}
	
	/**
	 * 
	 * 简要说明：通过参数健查询数量
	 * 编写者：陈骑元（chenqiyuan@toonan.com）
	 * 创建时间： 2022年2月13日 上午9:58:56 
	 * @param 说明  paramKey  参数健
	 * @return 说明 
	 */
	public long selectCountByParamKey(String paramKey) {
		Query query=new Query();
		WebplusMongo.eq(query, "param_key", paramKey);
		
		return this.count(query);
	}
	/**
	 * 
	 * 简要说明： 通过参数健获取有效参数键值
	 * 编写者：陈骑元（chenqiyuan@toonan.com）
	 * 创建时间： 2022年2月13日 上午9:22:25 
	 * @param 说明
	 * @return 说明
	 */
	public Param selectByParamKey(String paramKey) {
		
		return this.selectByParamKey(paramKey, WebplusCons.ENABLED_YES);
	}
	
	/**
	 * 
	 * 简要说明：获取有效的参数健
	 * 编写者：陈骑元（chenqiyuan@toonan.com）
	 * 创建时间： 2022年2月13日 上午9:25:13 
	 * @param 说明
	 * @return 说明
	 */
    public Param selectByParamKey(String paramKey,String status) {
		Query query=new Query();
		WebplusMongo.eq(query, "param_key", paramKey);
		WebplusMongo.eq(query, "status", status);
		
		return this.findOne(query);
	}
    
    
    
   
	
}
